Source Code for SGI Xserver papers

HUB | Up | Download | Pheedbak | Tree | Topic | A-Z | Search | Hot | New


This directory contains source code which accompanies a series of papers on SGI's Xserver. The papers exist as PostScript files in toolbox/documents/X.

This directory contains the following:

README           ascii version of this html file.

  

Makefile         A Makefile to compile the supplied demonstation code.



3color.ps        A Three Color Cursor for X describes how, with SGI hdw 
3color.ps.Z      supporting three color cursors, one can generate such 
                 cursors using X.  An explication of how to implement the 
                 previously undocumented XSGIMiscSetThirdCursorColor 
                 routine, which allows the third color of an X cursor to 
                 be specified via the use of SGI's proprietary 
                 SGI-SUNDRY-NONSTANDARD extension.  This interface is the
                 same mechanism used by the IRIS GL's internal cursor
                 management routines to implement three color cursors in
                 the GL.  OpenGL developers are already aware that X is
                 how non-3D rendering tasks are performed.  This means
                 OpenGL developers should anticipate using X the generate
                 three color cursors.  This mechanism is not part of the
                 X standard and is only supported on Silicon Graphics X
                 servers.  But it is easy to query if a given X server
                 supports it or not so programs can be written to use 
                 three color cursors if available.  And if not, programs
                 can fall back to use two color cursors for less capable
                 X servers.

tulip.c          Sample code for using three-color cursor program which
                 turns the root window cursor into a tulip. To return to
                 the default root cursor after running tulip, do:

/usr/bin/X11/xsetroot -cursor_name X_cursor -fg red -bg white

		 (the above is included in .stop3colortulip)
                 Also, if you run a program like twilight, bgpaste or that 
                 fish background program that tries to totally cover up the 
                 root window, you won't ever see the tulip cursor.




imp_layers.ps    A Fully Functional Implementation of Layered Windows 
imp_layers.ps.Z  explains the semantic basis for SGI's current X server 
                 support for layered windows.  This paper was presented at 
                 the 7th Annual X Technical Conference in Boston, Mass.
  
                 ABSTRACT:  Incorporating layered windows into the X 
                 server is a non trivial task, which has been attempted 
                 repeatedly in the past, with varying lack of success.  
                 We present our criteria for the proper behavior of 
                 layered widnows.  We show that the assumptions built 
                 into the DIX windowing code prevent the proper 
                 implementation of layered windows, proving that the 
                 current windowing code is inherently device-dependent.  
                 We propose a restructuring of the sample server, 
                 moving much of the windowing code to DDX.  We show how 
                 the sample windowing model can be extended to clip 
                 layered windows, and what changes are required to other 
                 parts of the server which depend in part on knowledge 
                 of the current window tree.


  

prog_layers.ps   Programming X Overlay Windows explains how to use SGI's 
prog_layers.ps.Z SERVER_OVERLAY_VISUALS convention to portably create X 
                 windows in the overlay planes.
 
                 ABSTRACT:  Overlay planes provide an alternate set of 
                 frame buffer bitplanes which can be preferentially 
                 displayed instead of the normal set of bitplanes.  
                 Overlay planes have been common in high-end graphics 
                 systems for some time.  Recently, work has been done 
                 by Silicon Graphics to integrate overlay plane support 
                 into the X Window System.  A standard convention 
                 proposed and implemented by Silicon Graphics allows X 
                 client writers to create windows in the overlay planes.  
                 This article describes how to write programs to utilize 
                 overlay planes.
  
XLayerUtil.c     Sample code for routines to portably query overlay 
                 visuals described in the prog_layers.ps article.
XLayerUtil.h     Acommpanying header file.

layerdemo.c      Sample code demonstrating how to use pure-X overlay 
                 windows to achieve transparency effects.

xlayerinfo.c     Sample code for a program to list a server's visuals 
                 including visual layering information.
  
  
  

xsgi.ps          Going Beyond the MIT Sample Server:  The Silicon Graphics 
xsgi.ps.Z        X11 Server explains the enhanced capabilities of SGI's X 
                 server.
  
                 ABSTRACT:  The MIT X11 Sample Server is the starting 
                 point for nearly all X11 server implementations.  Most 
                 server vendors add value beyond the sample server.  
                 Silicon Graphics has done extensive work to enhance the
                 performance and functionality of its X server 
                 implementation.  The server supports X across Silicon 
                 Graphics' entire line of high-performance graphics 
                 hardware.  This article describes six important areas 
                 of enhancement made to the Silicon Graphics server:  
                 integration with the IRIS GL graphics library, a high 
                 performance input subsystem, the non-frame buffer 
                 porting layer, support for specific hardware features,
                 the dynamic linking of hardware support, and the 
                 Display PostScript extension.

crosshair.c      Sample code for turning the root window's cursor into 
                 a crosshair cursor.  To return to default root cursor, run 
                 
/usr/bin/X11/xsetroot -cursor_name X_cursor -fg red -bg white

		 (the above is included in .stopcrosshair)
                 Also, if you run a program like twilight, bgpaste or that 
                 fish background program that tries to totally cover up the 
                 root window, you won't get the crosshair.

Select any combo of files you'd like to send yourself a compressed tar image of. Executables/scripts are indicated with a trailing `*' character. (Depending upon the browser, it may be necessary to hold down the Ctrl key to select/deselect disjoint items.) a compressed tar image of the above-selected items.
OR, ...
a compressed tar image of the entire Xserver subtree.

Copyright © 1995, Silicon Graphics, Inc.